iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0

簡介

在前一篇有提到的 Django 專案初始目錄中,包含了 wsgi.pyasgi.py 兩個檔案。而在這篇文章中,我們將介紹 WSGI。WSGI 的全名是 Web Server Gateway Interface,他是一個負責串接的標準規範。

首先來介紹系統之間的互動關係,如圖一所示,首先使用者透過 Web Browser 發送 HTTP Request,這個 HTTP Request可能是登入或是購買等操作,接著 Web Server 會接收到這個 HTTP Request,進行管理與分析,常見的 Web Server 是 Nginx 以及 Apache,最後 Web Server 會將 HTTP Request 送至 Web Application,而 Web Application 正是我們上一篇使用 Django 開發成品。

https://ithelp.ithome.com.tw/upload/images/20240917/2016866392htUik4od.png

而Python 官方組織推出了 WSGI 這個標準規範,作為 Web 伺服器與 Web 應用程式之間的溝通橋樑。如圖二所示,WSGI 負責協調這兩者的互動,確保請求與回應能夠順利傳遞。在 Python 中,最知名的 WSGI 伺服器是 Gunicorn。接下來,我將透過範例來進行介紹。

https://ithelp.ithome.com.tw/upload/images/20240917/20168663F12sP9QYSS.png

範例

本次範例使用的是 gunicorn 22.0.0 版本

poetry add gunicorn==22.0.0

接著使用 Gunicorn WSGI 來銜接上一篇 Django Web Application,只需要指定 mysite 目錄下的 wsgi 檔案即可。

poetry run gunicorn mysite.wsgi

上一篇
[Day 03] Django
下一篇
[Day 05] Flask
系列文
Python 不止於數據,開發應用程式它也在行!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言